package com.newear.marathon.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.newear.marathon.dto.admin.inquiry.*;
import com.newear.marathon.dto.admin.maintenance.*;
import com.newear.marathon.entity.admin.AdminUser;

public interface IAdminUserService extends IService<AdminUser>
{

    AdminUserAdditionResponseDTO doUserAddition(AdminUserAdditionRequestDTO requestDTO);

    AdminUserInquiryPageResponseDTO doUserInquiryPage(AdminUserInquiryPageRequestDTO requestDTO);

    AdminUserModifyResponseDTO doUserModify(AdminUserModifyRequestDTO requestDTO);

    AdminUserBaseInfoModifyResponseDTO doUserBaseInfoModify(AdminUserBaseInfoModifyRequestDTO requestDTO);

    AdminUserModifyStatusResponseDTO doUserModifyStatus(AdminUserModifyStatusRequestDTO requestDTO);

    AdminUserModifyInquiryResponseDTO doUserModifyInquiry(AdminUserModifyInquiryRequestDTO requestDTO);

    AdminUserModifyPasswordResponseDTO doUserModifyPassword(AdminUserModifyPasswordRequestDTO requestDTO);

    AdminUserResetPasswordResponseDTO doUserResetPassword(AdminUserResetPasswordRequestDTO requestDTO);

    AdminLeftMenuInquiryResponseDTO doLeftMenuInquiry(AdminLeftMenuInquiryRequestDTO requestDTO);

    AdminPermissionsInquiryResponseDTO doPermissionsInquiry(AdminPermissionsInquiryRequestDTO requestDTO);

    AdminUserBaseInfoModifyInquiryResponseDTO doUserBaseInfoModifyInquiry(AdminUserBaseInfoModifyInquiryRequestDTO requestDTO);

    AdminUser findByUsername(String username);
}
